package com.ruoyi.system.service;

import java.util.List;
import com.ruoyi.system.domain.Reg;
import org.springframework.web.bind.annotation.RequestParam;

/**
 * 属性变量管理Service接口
 * 
 * @author yaozh
 * @date 2024-03-01
 */
public interface IRegService 
{

    List<Reg> findAllReg(String dBname);

    List<Reg> findAllByIsEnergy(String dBname, String isenergy);

    int updateIsThreeDShowByRegIdList(String dbName, List<Long> subRegIdList,Integer isShow);

    int updateTagNameByRegId(String dBname, Reg reg);

    /**
     * 查询属性变量管理
     * 
     * @param regId 属性变量管理主键
     * @return 属性变量管理
     */
    public Reg selectRegByRegId(Long regId, String dbName);

    /**
     * 查询属性变量管理列表
     * 
     * @param reg 属性变量管理
     * @return 属性变量管理集合
     */
    public List<Reg> selectRegList(Reg reg, String dbName);

    List<Reg> selectRegListByDrIds(Reg reg, Long[] drIds, String dbName);

    /**
     * 新增属性变量管理
     * 
     * @param reg 属性变量管理
     * @return 结果
     */
    public int insertReg(Reg reg, String dbName);

    /**
     * 修改属性变量管理
     * 
     * @param reg 属性变量管理
     * @return 结果
     */
    public int updateReg(Reg reg, String dbName);

    /**
     * 批量删除属性变量管理
     * 
     * @param regIds 需要删除的属性变量管理主键集合
     * @return 结果
     */
    public int deleteRegByRegIds(Long[] regIds, String dbName);

    /**
     * 删除属性变量管理信息
     * 
     * @param regId 属性变量管理主键
     * @return 结果
     */
    public int deleteRegByRegId(Long regId, String dbName);

    public int updateRegAlarmByTagName(String tagName, String isAlarm, String alarmLevelStr, String dbName);

    public String importReg(List<Reg> regList, Boolean isUpdateSupport, String operName, String dbName);
}
